1. Field of the Invention
This invention relates to an ATM (asynchronous transfer mode) cell multiplexing apparatus, and particularly to such an apparatus and method suitable for providing functions for performing multiplexed transmissions of AAL (ATM adaptation layer) type-2 ATM cells.
2. Description of Related Art
Referenced Literature: Kawakami, et. al.: xe2x80x9cIMT-2000 mobairu maruchimedeia wo jitsugen suru ATM akusesu seigyo hoshiki [ATM access control scheme for implementing IMT-2000 mobile multimedia],xe2x80x9d Denshi Joho Tsushin Gakkai Kenkyu Hokoku [Research Report of The Institute of Electronics, Information and Communication Engineers (IEICE)], Vol. 98, No. 18, pp 41-48, xe2x80x9cKokan shisutemu [Switching systems],xe2x80x9d Shingaku Giho, SSE98-6 RCS98-6 (April, 1998).
In regard to research done conventionally on multiplex-transmission functions of this type, the literature cited above is available. In particular, in FIG. 15 on page 48 in the literature cited, the configuration of a multiplex-transmission apparatus comprising functions for generally controlling the multiplexed transmission of AAL type-1, type-2, and type-5 ATM cells is disclosed. This configuration is shown in FIG. 1 in the present specification.
In general, in AAL type-1 and type-5 ATM cells, it is possible to provide various quality of service (QoS) levels in response to user demand. More specifically, ATM cells are divided into a plurality of QoS classes (priorities), and, by implementing band control according to each class, that QoS class is guaranteed.
The details of this process are now described. With the ATM cell multiplexing apparatus shown in FIG. 1, when an AAL type-1 or type-2 ATM cell is input, the QoS class thereof is identified by a distribution module 1. The distribution module 1 distributes ATM cells to corresponding buffers 2i (where i=1, 2, . . . n) for cells to be sent, provided beforehand for each class, based on the QoS class identified. An ATM multiplexer 3 fetches ATM cells held in the buffers 2i (where i=1, 2, . . . n) for cells to be sent, in accordance with established fetch order and output timing, and transmits them on a transmission path.
In the case of AAL type-2 cells, when the user requires different QoS levels, the QoS levels are divided into classes that represent priorities. In such cases, however, CPS (common part sublayer) packets are input to the ATM cell multiplexing apparatus.
When CPS packets are input to the ATM cell multiplexing apparatus, a CPS packet distribution module 4 identifies the QoS classes of the packets. Then, the CPS packet distribution module 4 distributes the input CPS packets into corresponding buffers 5i (where i=1, 2, . . . n) for packets to be ALL multiplexed, provided beforehand for each class, based on the QoS class identified. The AAL multiprocessing timing and ATM cell transmission timing are synchronized by a timing controller 6. When it is time to output ATM cells, irrespective of the input traffic volume, the timing controller 6 sends a multiprocessing start request to the AAL multiplexer 7. The AAL multiplexer 7 reads out CPS packets according to the receiving timing of processing start request, and performs AAL multiplexing in ATM cell format. When this is done, even when there are not enough CPS packets present in the buffers for packets to be AAL multiplexed to sufficiently fill out an ATM cell payload, the AAL multiplexer 7 sends an ATM cell (AAL 2) partially carrying CPS packets to a buffer 8 for ATM cells (AAL 2) to be sent. Thus the configuration is such that CPS packets of the same QoS are AAL multiplexed in one ATM cell.
However, the prior art is subject to a technical difficulty that will now be described. That is, in the apparatus configuration as described in the foregoing, in guaranteeing QoS levels, there is a problem in that a phenomenon called uncontrolled priority inversion may occur, making it impossible to satisfy the most critical QoS demands of multimedia services.
By priority inversion here is meant a phenomenon whereby data of high priority are made to wait by data of low priority. When, moreover, the maximum value of this forced wait time cannot be logically predicted, this is called an uncontrolled priority inversion. Such uncontrolled priority inversions become serious hindrances in real time systems and multimedia services and the like.
An example of uncontrolled priority inversion is now described, with reference to FIG. 1. In this description, the priority is higher the smaller the number of the QoS class.
Let it be assumed that an AAL type-2 CPS packet for which the QoS class is 1 is held in a buffer 51 for packets to be AAL multiplexed at the point in time when an AAL type-2 CPS packet for which the QoS class is 3 is input to the buffer 8 for ATM cells to be sent.
Conventionally, when QoS levels are guaranteed, a QoS class-1 CPS packet must be AAL multiplexed in ATM cell and sent out after the ATM cells in the buffer 8 for ATM cells to be sent are transmitted. However, when the QoS class in AAL type-5 ATM cells is 2, the priority is higher for the AAL type-5 ATM cells than for the AAL type-2 ATM cells, wherefore the AAL type-5 ATM cells are successively transmitted. Until that transmission is completed, the transmission of AAL type-2 ATM cells is made to wait.
It does not matter that AAL type-2 ATM cells are made to wait because their priority is itself low. However, so long as AAL type-2 ATM cells are not transferred, with the ATM multiplex-transmission apparatus shown in FIG. 2, the AAL type-2 CPS packets of the highest priority (QoS class 1) held in the buffer 5 for packets to be AAL multiplexed may be made to wait for unlimited times, causing uncontrolled priority inversions. In other words, with the conventional apparatus, the buffer 8 for ATM cells (AAL 2) to be sent becomes a bottleneck.
One object of the invention is to provide an ATM cell multiplexing apparatus and method which can be implemented wherewith uncontrolled priority inversions do not occur.
Another object of the invention is to provide an ATM cell multiplexing apparatus and method which can be implemented wherewith not only do uncontrolled priority inversions not occur, but the cell loss ratio can also be guaranteed.
A further object of the invention is to provide an ATM cell multiplexing apparatus and method which can be implemented wherewith the multiplexing efficiency is superior to that obtainable with the conventional ones.
(A) According to one aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: an AAL multiplexer for generating ATM cells from AAL type-2 user data; a buffer for cells to be sent for temporarily holding generated ATM cells; and an ATM multiplexer for ATM-multiplexing ATM cells read out from the buffer for cells to be sent; wherein the buffer for cells to be sent comprises functions for discarding ATM cells when the transmission waiting period exceeds a time-over period; and the AAL multiplexer comprises functions for giving priority to user data for which a higher quality of service is demanded than for the discarded ATM cells, which data are ATM cells generated immediately after the discarding.
According to the second aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: AAL multiplexers for generating ATM cells from AAL type-2 user data; and buffers for cells to be sent for temporarily holding generated AAL type-2 ATM cells; wherein: said AAL multiplexers and said buffers for cells to be sent are comprised in a plurality of sets for each quality of service; ATM cells read out from said buffers for cells to be sent are ATM-multiplexed by said ATM multiplexers; and said buffers for cells to be sent, respectively, comprise functions for discarding ATM cells when transmission waiting periods thereof exceed time-over periods set for each quality of service.
According to the third aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; and an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; wherein: said buffers for packets to be AAL multiplexed, respectively, comprise functions for directly notifying said ATM multiplexer, when user data awaiting multiplexing are present, of quality of service corresponding to those user data.
According to the fourth aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; a priority inheritance module for comparing quality of service notified of from said buffers for packets to be AAL multiplexed holding user data awaiting multiplexing against quality of service of ATM cell held in said buffer for cells to be sent, and, when quality of service of said user data is higher than quality of service of said ATM cell, causing quality of service of said user data to be inherited as quality of service of said ATM cell; and a quality of service recovery module for determining multiplexing order and for restoring quality of service of ATM cells read into said ATM multiplexer from said buffer for cells to be sent to original pre-inheritance quality of service.
According to the fifth aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; and a temporary priority inheritance module for comparing quality of service notified of from said buffers for packets to be AAL multiplexed holding user data awaiting multiplexing against quality of service of ATM cell held in said buffer for cells to be sent, and, when quality of service of said user data is higher than quality of service of said ATM cell, notifying said ATM multiplexer of said quality of service of said user data as quality of service of said ATM cell.
In a preferred embodiment of the ATM cell multiplexing apparatus according to the fourth aspect of the invention, said buffers for packets to be AAL multiplexed notify said priority inheritance module of quality of service only when wait queue length for user data held therein exceeds a critical level set for each quality of service that corresponds to said user data.
In another preferred embodiment of the ATM cell multiplexing apparatus according to the fourth aspect of the invention, said buffers for packets to be AAL multiplexed notify said priority inheritance module of quality of service only when wait period for user data held therein exceeds a critical level set for each quality of service that corresponds to said user data.
In another preferred embodiment of the ATM cell multiplexing apparatus according to the fourth aspect of the invention, said buffers for packets to be AAL multiplexed notify said priority inheritance module of quality of service only when either wait queue length for user data held therein or wait period for user data held therein exceeds a respective corresponding critical level set for each quality of service that corresponds to said user data.
In a preferred embodiment of the ATM cell multiplexing apparatus according to the fifth aspect of the invention, said buffers for packets to be AAL multiplexed notify said temporary priority inheritance module of quality of service only when wait queue length for user data held therein exceeds a critical level set for each quality of service that corresponds to said user data.
In another preferred embodiment of the ATM cell multiplexing apparatus according to the fifth aspect of the invention, said buffers for packets to be AAL multiplexed notify said temporary priority inheritance module of quality of service only when wait period for user data held therein exceeds a critical level set for each quality of service that corresponds to said user data.
In another preferred embodiment of the ATM cell multiplexing apparatus according to the fifth aspect of the invention, said buffers for packets to be AAL multiplexed notify said temporary priority inheritance module of quality of service only when either wait queue length for user data held therein or wait period for user data held therein exceeds a respective corresponding critical level set for each quality of service that corresponds to said user data.
According to the sixth aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; a plurality of sets of recovery buffers forming pairs with said buffers for packets to be AAL multiplexed; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; and an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; wherein: said buffer for cells to be sent comprises functions for discarding ATM cells when transmission wait period therefor exceeds a time-over period; and said AAL multiplexer comprises: functions for giving priority to user data having a quality of service higher than quality of service of discarded ATM cell user data, as priority of ATM cells to be generated immediately after discarding; and functions for, when generating next ATM cell from user data having same quality of service as quality of service of discarded ATM cell, reading out same user data as discarded ATM cell from recovery buffer corresponding to that quality of service, and again generating same ATM cell from said user data.
According to the seventh aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; a plurality of sets of recovery buffers forming pairs with said buffers for packets to be AAL multiplexed; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; and an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; wherein: said buffer for cells to be sent comprises functions for discarding ATM cell currently held therein when quality of service of buffer for packets to be AAL multiplexed requesting ATM cell discard is higher than quality of service of said ATM cell held therein; said buffers for packets to be AAL multiplexed each comprises functions for requesting said buffer for cells to be sent to discard ATM cell only when wait queue length for user data held in that buffer for packets to be AAL multiplexed exceeds a critical level set for each quality of service corresponding to those user data; and said AAL multiplexer comprises: functions for giving priority to user data having a quality of service higher than quality of service of discarded ATM cell user data, as priority of ATM cell to be generated immediately after discarding; and functions for, when generating next ATM cell from user data having same quality of service as quality of service of discarded ATM cell, reading out same user data as discarded ATM cell from recovery buffer corresponding to that quality of service, and again generating same ATM cell from said user data.
According to the eighth aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; a plurality of sets of recovery buffers forming pairs with said buffers for packets to be AAL multiplexed; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; and an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; wherein: said buffer for cells to be sent comprises functions for discarding ATM cell currently held therein when quality of service of buffer for packets to be AAL multiplexed requesting ATM cell discard is higher than quality of service of said ATM cell held therein; said buffers for packets to be AAL multiplexed each comprises functions for requesting said buffer for cells to be sent to discard ATM cell only when wait time for user data held in that buffer for packets to be AAL multiplexed exceeds a critical level set for each quality of service corresponding to those user data; and said AAL multiplexer comprises: functions for giving priority to user data having a quality of service higher than quality of service of discarded ATM cell user data, as priority of ATM cell to be generated immediately after discarding; and functions for, when generating next ATM cell from user data having same quality of service as quality of service of discarded ATM cell, reading out same user data as discarded ATM cell from recovery buffer corresponding to that quality of service, and again generating same ATM cell from said user data.
According to the nineth aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: a plurality of sets of buffers for packets to be AAL multiplexed provided for each quality of service; a plurality of sets of recovery buffers forming pairs with said buffers for packets to be AAL multiplexed; an AAL multiplexer for generating ATM cells from AAL type-2 user data read out from said buffers for packets to be AAL multiplexed; a buffer for cells to be sent for temporarily holding ATM cells generated; and an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffers for cells to be sent; wherein: said buffer for cells to be sent comprises functions for discarding ATM cell currently held therein when quality of service of buffer for packets to be AAL multiplexed requesting ATM cell discard is higher than quality of service of said ATM cell held therein; said buffers for packets to be AAL multiplexed each comprises functions for requesting said buffer for cells to be sent to discard ATM cell only when either wait queue length for user data held in that buffer for packets to be AAL multiplexed or wait time for user data held therein exceeds a critical level set respectively for each quality of service corresponding to those user data; and said AAL multiplexer comprises: functions for giving priority to user data having a quality of service higher than quality of service of discarded ATM cell user data, as priority of ATM cell to be generated immediately after discarding; and functions for, when generating next ATM cell from user data having same quality of service as quality of service of discarded ATM cell, reading out same user data as discarded ATM cell from recovery buffer corresponding to that quality of service, and again generating same ATM cell from said user data.
According to the tenth aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: an AAL multiplexer for generating ATM cells from AAL type-2 user data; a buffer for cells to be sent for temporarily holding generated ATM cells; and an ATM multiplexer for ATM-multiplexing ATM cells read out from said buffer for cells to be sent; wherein: said buffer for cells to be sent comprises functions for fixing quality of service demanded for ATM cell held therein to a fixed value determined irrespective of the quality of service applied to user data prior to multiplexing.
According to the eleventh aspect of the invention, there is provided an ATM cell multiplexing apparatus comprising: packet distribution means for outputting input packets after distributing them in quality classes; packet accumulation means, connected to said packet distribution mans, for accumulating packets in each of said quality classes and outputting them according to read-out timing; packet multiplexing means, connected to said packet accumulation means, for multiplexing packets into ATM cells and outputting same; ATM cell distribution means, connected to said packet multiplexing means, for outputting ATM cells after distributing them in quality classes; ATM cell accumulation means, connected to said ATM cell distribution means, for accumulating ATM cells in quality classes and outputting them according to read-out timing; and ATM cell multiplexing means, connected to said ATM cell accumulation means, and for multiplexing ATM cells and outputting same.
In a preferred embodiment of the ATM cell multiplexing apparatus according the eleventh aspect of the invention, said packets are AAL type-2 CPS packets.
In another preferred embodiment of the ATM cell multiplexing apparatus according the eleventh aspect of the invention, said ATM cell distribution means take input AAL type-1, type-2, and type-5 ATM cells and distribute them in quality classes.
In another preferred embodiment of the ATM cell multiplexing apparatus according the eleventh aspect of the invention, quality class or classes handled by said packet distribution means and said ATM cell distribution means are same class or classes.
According to the twelfth aspect of the invention, there is provided an ATM cell multiplexing method wherein: input CPS packets are distributed by packet distribution means based on quality classes; CPS packets distributed on basis of said quality classes are accumulated in packet accumulation means in order input; said CPS packets are read out from said packet accumulation means and multiplexed in ATM cells by packet multiplexing means; AAL type-2 ATM cells wherein said CPS packets are multiplexed are distributed on basis of quality classes by ATM cell distribution means together with ATM cells of other AAL types; ATM cells distributed on basis of said quality classes are accumulated in ATM cell accumulation means; and said ATM cells are read out from said ATM cell accumulation means and multiplexed by ATM cell multiplexing means.
In a preferred embodiment of the ATM cell multiplexing method according the twelfth aspect of the invention, an awaiting-multiplexing timer is started upon arrival of a CPS packet, and, when a predetermined awaiting-multiplexing time is reached, or when quantity of input CPS packets accumulated in said packet accumulation means sufficiently fills an ATM cell payload, said CPS packets are read out from said packet accumulation means and multiplexed in an ATM cell.
In another preferred embodiment of the ATM cell multiplexing method according to the twelfth aspect of the invention, when ATM cells are input to ATM cell multiplexing means from ATM cell accumulation means, multiprocessing is performed after determining priority or priorities among classes of ATM cells belonging to AAL type-1, type-2, or type-5 in cases where demanded band does not exceed band that can be provided, and multiprocessing is performed based on priorities in cases where demanded band does exceed band that can be provided.